/***************************************************************************************
Firm-embedded productivity and cross-country income differences
Alviarez, Cravino and Ramondo
Journal of Political Economy (2022)

Program: figure_06_alt_transfer_costs.do
Date: October 2022

Description: Reproduces Figure 6: Alternative assumptions on the technology transfer costs.

*****************************************************************************************/

*-------------------------------------------------------------------------------
global typeden=1
include "set_directories.do"
set memory 64g
global lf "LF"

*Log
cap log close
log using "${clogs}/figure_06_alt_transfer_costs.log",replace
*-------------------------------------------------------------------------------



*Assuming the technology transfer costs have an origin-specific component
*-----------------------------------------------------------------
clear all
use year isocode type D_A using "${data}/estimates_agg_naics_sales_s1_base_woparent.dta", clear


*Assuming the technology transfer costs have an detination-specific component
*-----------------------------------------------------------------
merge 1:1 year isocode type using "${data}/estimates_agg_naics_sales_s1_base_withparent.dta", keepusing(D_P)
drop if _merge==2
drop _merge

local grvar0 "gdp_pw_ppp" 
local grvar1 ""	
local rr ""
local yy "2016"
local yy_ref=`yy'	
replace year=`yy_ref'
merge m:1 year isocode type using "${data}/aggregates_tfp_lp_klems_agg.dta" 
drop if _merge==2
drop _merge

foreach var in D_A  D_P {
gen `var'_phi=(-1)*`var'*(0.2)
*---------------------------------------
}

local LHS1 D_A_phi
local LHS2 D_P_phi
local RHS ln_`grvar0'
	
sum `LHS1' `RHS'  `LHS2'
local ytitle "{&Delta}`=ustrunescape("\u03D5\u0303")'{sub:n}"
local xtitle "{&Delta}y{sub:n}"
local firm_emb_DA "{&Delta}D{sub:n}" 
local firm_emb_DP "{&Delta}O{sub:n}"


reg `LHS1' `RHS'
mat b = e(b)
mat V = e(V)
global c1: display %-03.2fc round(b[1,1],0.01)
global se1: display %-03.2fc round(sqrt(V[1,1]),0.01)

reg `LHS2' `RHS' 
mat b = e(b)
mat V = e(V)
global c2: display %-03.2fc round(b[1,1],0.01)
global se2: display %-03.2fc round(sqrt(V[1,1]),0.01)

display $c1
display $se1
display $c2
display $se2


global opt1 msymbol(circle_hollow) mlabel(isocode) mlabcolor(red)  msize(small) mlabsize(small)
global opt2 msymbol(square_hollow) mlabel(isocode) mlabcolor(blue) msize(small) mlabsize(small)
two (scatter `LHS1' `RHS', sort $opt1  mcolor(red)) (lfit `LHS1' `RHS', lcolor(red)) (line `RHS' `RHS', lcolor(none))  ///
	(scatter `LHS2' `RHS', sort $opt2  mcolor(blue)) (lfit `LHS2' `RHS', lcolor(blue)) (line `RHS' `RHS', lcolor(none)),  ylabel(, format(%5.1f) labsize(medlarge)) xlabel(-1(0.2)0, format(%5.1f) labsize(medlarge)) ///
	title("`title'", size(small)) ytitle("`ytitle'", size(medlarge)) xtitle("`xtitle'", size(medlarge)) graphregion(fcolor(white) lcolor(white)) ///
	legend(order(2 "`firm_emb_DA'=0: $c1 ($se1) (baseline)" 5 "`firm_emb_DP'=0: $c2 ($se2)") rows(2) size(medlarge) bplace(se) ring(0) region(lwidth(none))) 

graph export "${rmain}/fig_06.pdf", replace
	
	
log close 
	
	
	